Feature Requests
Here you may request features for SAWBLADE. Features Administrative issues *Program will not be blocked in any way whatsoever. Using a tool for evil (e-Mail for example) doesn't necessarily make it evil. Administrative issues stemming from administrators disliking constructive editing with the intent of fixing a wiki is just that, an administrative issue and not the programmer's responsibility. **It is also not the programmer's responsibility should the user become blocked because of usage of or issues stemming from SAWBLADE. As AWB says, you are responsible for your edits. ***However, should you become banned when no bot policy exists, you should raise and appeal the fact. Article Compression *Trim leading and/or trailing whitespace **Can cause conflicts with leading space for block/pre, but this feature is rarely/poorly used as it creates an overflowing box. *Trim surplus lines: No more than two line breaks. Might cause issues with editors using line breaks instead of clears for positioning. *Remove leading and trailing spaces from links and their pipes. *Template Compression (assignment) : Remove leading and trailing whitespace from equal signs. Conflicts with beautifying / spatial alignment. *Template Compression (parameter / line) : Remove leading and trailing whitespace from lines. Attempts to reasonably make use of horizontal space to fit vertically large templates. **Todo: Some sort of hinting system, interpretation of child elements? *Remove double spaces. *Remove redundant and empty template arguments Special Insights *Special Insights Fixer **Due to how caching works, results don't show up until the next day. If heavy editing is involved, another broken article could work its way in. **The purger was a part of the Insights fixer, it is now its own module. **Unfortunately purging isn't the only answer. It rebuilds the link tables in the back end, which *can* resolve some issues (such as removing phantom links to articles having issues, but the reverse is also true, establishing links to articles having issues), but it's likely that this is a multiple cause issue. I am looking into parsing for syntax errors. After this, the most likely cause would be that Fandom is simply not allocating enough time during its build phase to allow the report to complete. It is still unclear as to how FFWiki consistently has the full special insights report up. Curiously enough the image report is broken now. I should observe the wiki report daily and compare for when the report suddenly starts working or breaks again. The fix might be in the differences. Links Anchor Validation One feature sorely needed is anchor validation. How do I achieve this? If the page exists, and has been retrieved, check the ID list. How do I generate the ID list? If the page exists, and has not been retrieved, set up an event listener for the retrieval. How do I generate the listener? If the anchor exists, do nothing. If the anchor doesn't exist report nonexistence, suggest top 5 similar matches for the page. If the page doesn't exist: If the page was deleted, execute user option. If the page has never existed, the anchor should not exist (article was copied), execute user option. Data Build link dictionary on list of all pages, full link and pipe tricked where possible. Metadata *Internal link metadata: What do other pages call this page? **Obtain data from redirects **Obtain data from link titles ***Store info in link dictionary. ***How to present this information usefully? Linking and Unlinking *Link pages to phrases that match in the dictionary, by order of most to least words. *Unlink deleted pages? Purging A rudimentary purger exists to rebuild page links with several styles: Total Wiki Purge, Namespace purge, Special Insights purge (including pages linking to wanted pages). While the V1 API isn't needed, it can be done in fewer queries if it is available. *There is an issue with the API throwing errors if a page title has a period in it. I will wait for FANDOM to finish the mediawiki upgrade before filing a bug report. **Must compensate for when the API doesn't respond with rate limit data when querying the user (Muppet, Steven-Universe). Simplification *Like AWB has to offer, if target and text matches, remove text *Unlike AWB has to offer: **Do the Help:Pipe trick if target and text match while excluding the prefix of namespaces and suffix delimiter of open parentheses or comma. See link for complicated rules. Wanted Links *Reduction:I found that stripping each list entry of all non-alphanumeric characters, including spaces, and doing the same to the list of all pages, and doing case-insensitive matching it's possible to find existing linked wanted pages. **Fuzzy Searching? **Pipe Tricking? *Consolidation: There may be similar named wanted links, with different punctuation, thereby making it possible to reduce the number of wanted entries. Categories *Internal link metadata: What categories do other pages have that link to this page? **Obtain data from linked pages ***User should decide because there can be situations where lots of "Good guy" categories can link to "Bad Guy" category page and should not necessarily be a good guy. Template Validation *Validate templates **Missing / empty but valid keys okay **Unknown / invalid keys removed HTML Validation Side-integration with the HTML validator might pinpoint subtle bugs. *It's best to start with the templates as that will fix a lot of articles very quickly. **Fixes can't be fully automated, but can be somewhat automated. Style Statistics Any time style would be used in wikitext, it would note the selector path and styles used.